package org.bigjava.novelplatform.common.utils;

import org.bigjava.novelplatform.common.constant.NovelInfoConstant;

import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Map;

/**
 * 使用redis时需要各种key，为了便于区分，和管理这些构造key或key常量在此生成
 * @author ykh
 * @create 2022-05-07 15:46
 */
public class RedisBuildKey {

    /**
     * 书籍章节信息的key
     * @param bookId
     * @return
     */
    public static String bindBookChapterInfo(Integer bookId){
        return NovelInfoConstant.RedisKey.BOOK_KEY_PREFIX+bookId;
    }

    /**
     * 定时发布的key
     * @param bookId
     * @return
     */
    public static String bindTimedTask(Integer bookId){
        return NovelInfoConstant.RedisKey.BOOK_KEY_PREFIX+"_TimedTask_"+bookId;
    }

    //维护一个redis推荐数据的key  Map<推荐类型，推荐的key集合>
    public static Map<String,ArrayList<String>> BOOK_REDIS_KEY_LIST;

    static {
        RedisUtils redisUtils = new RedisUtils();
        final Map map = redisUtils.parseJsonToObject("BOOK_REDIS_KEY_LIST", Map.class);
        BOOK_REDIS_KEY_LIST = map;
    }
}
